/*
 * ResourceGuildBanalce.h
 *
 *  Created on: 2014. 7. 28.
 *      Author: mega
 */

#ifndef RESOURCEGUILDBANALCE_H_
#define RESOURCEGUILDBANALCE_H_

#include <map>
#include "../Enum.h"

namespace GuildServer { namespace NResource {

class ResourceGuildBanalce
{
public:
	struct Flyweight
	{
		uint32_t	_INDEX;
		int32_t		_VALUE;
	};

public:
	ResourceGuildBanalce();
	virtual ~ResourceGuildBanalce();

	bool		LoadResource();
	Flyweight *	GetFly(Balance eIdx);

	int		GetGuildMaxUser(int guild_grade);
	int		GetGuildMaxScore();
	int		GetMemberDailyMaxScore();
	int		GetGuildGradeByScore(int guild_score);
	int		GetNextGradeGuildScore(int guild_grade);

private:
	void		Clear();

public:
	typedef std::map<int, Flyweight *>		BALANCEMAP;

private:
	BALANCEMAP	clsFlyMap;
};

} /* namespace NResource */ } /* namespace GuildServer */

#endif /* RESOURCEGUILDBANALCE_H_ */
